package com.tools.common.exception;

import com.tools.common.object.Note;

/**
 * 本库的根异常，继承自运行时异常
 * */
@Note("本库的根异常，继承自运行时异常")
public class ParentException extends RuntimeException{

    private static final long serialVersionUID = -4098751148057695996L;

    @Note("异常信息，用于调试，不对业务方向展示")
    private String errorMessage;

    /* *******************************************************************************************
     *
     *          构造器
     *
     * *******************************************************************************************
     * */

    public ParentException(Throwable e) {
        super(e);
        this.errorMessage = e.getMessage();
    }

    public ParentException(String errorMessage) {
        super(errorMessage);
        this.errorMessage = errorMessage;
    }

    public ParentException(Throwable e, String errorMessage) {
        super(e);
        this.errorMessage = errorMessage;
    }

    /* *******************************************************************************************
     *
     *          Getter / Setter
     *
     * *******************************************************************************************
     * */

    public String getErrorMessage() {
        return errorMessage;
    }

    public void setErrorMessage(String errorMessage) {
        this.errorMessage = errorMessage;
    }

}
